#    a+b+

S0:  Char a
     Try S0
S1:  Char b
     Try S1
     Match  



#    ab|cd|ef

     Defer S1
     Char a
     Char b
     Jump L1
S1:  Defer S2
     Char c
     Char d
     Jump L1
S2:  Char e
     Char f
L1:  Match 



#    [a-z]+ 

     Range 97 123
S0:  Defer S1
     Range 97 123
     Jump S0
S1:  Match



# (.+\n)+

S1:  Range 32 128
     Try S1
     Range 13 14
     Range 10 11
     Try S1
L1:  Match 




# [^a]+(a+)(b+)

B0:  Range 98 97
     Try B0
     Subm 0
S0:  Char a
     Try S0
     Subm 1
     Subm 2
S1:  Char b
     Try S1
     Subm 3
L1:  Match 





ab

\0
     Char a
     Char b
     \r
     \n
     Match




abc
\0
     Try S1
     Char a
     Char b
     Jump L1
S1:  Try S2
     Char c
     Char d
     Jump L1
S2:  Char e
     Char f
L1:  +Look C0
     Match 
C0:  Range 1 256
     Match




abaaaba@ababa
\0
o0:  Defer o1
     Range 1 256
     Jump o0
o1:  Subm 0  
     Char @
     Match



# Finite automaton for the given table

A0:  If 0 A0
     Char 1
B0:  If 1 A0
     Char 0
F0:  If 0 B0
     If 1 F0
     Match


    | 	0   |	1

----+-------+-----
A   |	A   |	B

B   |	F   |	A

F   |	B   |	F

